Example-based Program Querying

نویسندگان

  • Andy Kellens
  • Johan Brichau
  • Coen De Roover
چکیده

Program query languages are an essential component of program analysis and manipulation systems. In each such system, a query identifies the source-code parts of interest by reasoning over a program representation that is dedicated to the intent of the system (e.g. call-graphs to detect behavioral flaws, abstract syntax trees for refactorings, concrete source code to verify programming conventions, etc.). In order to detect a wide variety of such “patterns of interest”, or more importantly, to detect patterns that require a combination of such program representations, developers must understand all the different applicable representations and techniques. We therefore present a logicbased language that allows the program’s implementation to be queried using concrete source code templates that are matched against a combination of structural and behavioral program representations. These representations include call-graphs, points-to analysis results and abstract syntax trees that are uniformly composed through a customizable unification procedure. The result of our approach is that developers can detect patterns in the queried program using source code excerpts (embedded in logic queries) which act as prototypical samples of the structure and behavior they intend to match.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Developing a BIM-based Spatial Ontology for Semantic Querying of 3D Property Information

With the growing dominance of complex and multi-level urban structures, current cadastral systems, which are often developed based on 2D representations, are not capable of providing unambiguous spatial information about urban properties. Therefore, the concept of 3D cadastre is proposed to support 3D digital representation of land and properties and facilitate the communication of legal owners...

متن کامل

Graphical Querying of Model-Driven Spreadsheets

This paper presents a graphical interface to query modeldriven spreadsheets, based on experience with previous work and empirical studies in querying systems, to simplify query construction for typical end-users with little to no knowledge of SQL. We briefly show our previous text based model-driven querying system. Afterwards, we detail our graphical model-driven querying interface, explaining...

متن کامل

A Functional, Comprehensive and Extensible Multi-Platform Querying and Transformation Approach

Nowadays, models have become central artifacts in several application areas such as software development, reverse and re-engineering, simulation and verification, and optimization. Their benefits are that they are precisely defined in terms of metamodels and that they can be processed by generic tools. In whichever application area models are used, there is the need for analyzing and extracting...

متن کامل

Parallel Visual Information Retrieval in VizIR

This paper describes how parallel retrieval is implemented in the content-based visual information retrieval framework VizIR. Generally, two major use cases for parallelisation exist in visual retrieval systems: distributed querying and simultaneous multi-user querying. Distributed querying includes parallel query execution and querying multiple databases. Content-based querying is a two-step p...

متن کامل

Using Nested Tables for Representing and Querying Semistructured Web Data

This paper proposes an approach for representing and querying semistructured Web data, which is based on nested tables allowing internal nested structural variations. Our motivation is to reduce the complexity found in typical query languages for semistructured data and to provide users with an alternative for quickly querying data obtained from multiple-record Web pages. We show the feasibilit...

متن کامل

The Use of Existing XML Vocabularies for Web Services

Dynamic Web service applications, e.g. querying product information from different suppliers for the purpose of a price comparison, can only run automatically if, beside the technical interface, the semantics of the data are standardized. Several XML vocabularies, which, among other things, address the exchange of product data, have been developed independent of Web services (e.g. BMEcat, cXML,...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008